<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <script>
      /**
       * 一般我们都是使用for循环去遍历数组
       * JS中还为我们提供了一个方法，用来遍历数组
       * forEach()
       *   这个方法只支持IE8以上的浏览器
       */

      var arr = [
        {
          id: 1,
          name: "a1",
          age: 20,
        },
        {
          id: 2,
          name: "a2",
          age: 31,
        },
        {
          id: 3,
          name: "a3",
          age: 11,
        },
        {
          id: 4,
          name: "a4",
          age: 15,
        },
        {
          id: 5,
          name: "a4",
          age: 22,
        },
        {
          id: 6,
          name: "a4",
          age: 15,
        },
        {
          id: 7,
          name: "a4",
          age: 15,
        },
      ];

      function fun() {}
      /**
       * filter()方法需要一个函数作为参数
       *   这种函数由我们创建但不由我们调用，我们称为回调函数
       *   数组有几个元素函数就会执行几次，每次执行时，浏览器会将遍历到的元素的元素
       *    以实参的形式传递出来，我们可以定义形参，来读取这些内容
       *
       * 浏览器会在回调函数中传递3个参数，
       * 第一个参数，就是当前正在遍历的元素
       * 第二个参数，就是当前正在遍历的元素的索引
       * 第三个参数，就是正在遍历的数组
       */
      var newArr = arr.filter(function (item, index) {
        console.log("hello", item, index);
        // return item.age >= 18 ? true : false;
        return item.age >= 18;
      });

      console.log(newArr, "");
    </script>
  </head>
  <body></body>
</html>
